decode{
  if (!handshaked) {
    io.netty.buffer.ChannelBuffer.readerIndex
    io.netty.buffer.ChannelBuffer.skipBytes
    io.netty.buffer.ChannelBuffer.copy
  io.netty.buffer.ChannelBuffer.readableBytes
  io.netty.buffer.ChannelBuffer.readInt
  io.netty.buffer.ChannelBuffer.readableBytes
    try {
      io.netty.buffer.ChannelBuffer.readerIndex
  finally {
      io.netty.buffer.ChannelBuffer.skipBytes
 else {
    io.netty.buffer.ChannelBuffer.readerIndex
    return null;
}
setHandshaked{ }
